package com.evenmo.string;

import org.junit.Test;

/**
 * 选择排序
 */
public class SelectSort {
    @Test
    public void selectTest(){

        int[] arr={99,88,2,66,1,5,4,34,23,16,11};

        /**
         * 选择排序
         */

        for (int i=0;i<arr.length;i++){
            int min=i;//假设从小到大排序，设置最值的位置标记记录，假定第一个元素是最小的
            for (int j = i+1; j <arr.length ; j++) {
                if (arr[j]<arr[min]){
                    min=j;//改变最小值的位置标记记录
                }
            }
            //交换最小值和初始位置的值
            if (i!=min){
                arr[i]=arr[i]^arr[min];
                arr[min]=arr[i]^arr[min];
                arr[i]=arr[i]^arr[min];
            }
        }

        for (int i : arr) {
            System.out.println(i);
        }
    }

    public static void main(String[] args) {

    }
}
